proxygen
testing::internal::StlContainerView< Element[N]> Class Template Reference

#include <gmock-internal-utils.h>

Public Types

typedef internal::NativeArray< RawElement > type
 
typedef const type const_reference
 
typedef internal::NativeArray< RawElement > type
 
typedef const type const_reference
 
typedef internal::NativeArray< RawElement > type
 
typedef const type const_reference
 

Public Member Functions

typedef GTEST_REMOVE_CONST_ (Element) RawElement
 
typedef GTEST_REMOVE_CONST_ (Element) RawElement
 
typedef GTEST_REMOVE_CONST_ (Element) RawElement
 

Static Public Member Functions

static const_reference ConstReference (const Element(&array)[N])
 
static type Copy (const Element(&array)[N])
 
static const_reference ConstReference (const Element(&array)[N])
 
static type Copy (const Element(&array)[N])
 
static const_reference ConstReference (const Element(&array)[N])
 
static type Copy (const Element(&array)[N])
 

Detailed Description

template<typename Element, size_t N>
class testing::internal::StlContainerView< Element[N]>

Definition at line 422 of file gmock-internal-utils.h.

Member Typedef Documentation

template<typename Element , size_t N>
typedef const type testing::internal::StlContainerView< Element[N]>::const_reference

Definition at line 431 of file gmock-internal-utils.h.

template<typename Element , size_t N>
typedef const type testing::internal::StlContainerView< Element[N]>::const_reference

Definition at line 431 of file gmock-internal-utils.h.

template<typename Element , size_t N>
typedef const type testing::internal::StlContainerView< Element[N]>::const_reference

Definition at line 431 of file gmock-internal-utils.h.

template<typename Element , size_t N>
typedef internal::NativeArray<RawElement> testing::internal::StlContainerView< Element[N]>::type

Definition at line 425 of file gmock-internal-utils.h.

template<typename Element , size_t N>
typedef internal::NativeArray<RawElement> testing::internal::StlContainerView< Element[N]>::type

Definition at line 425 of file gmock-internal-utils.h.

template<typename Element , size_t N>
typedef internal::NativeArray<RawElement> testing::internal::StlContainerView< Element[N]>::type

Definition at line 425 of file gmock-internal-utils.h.

Member Function Documentation

template<typename Element , size_t N>
static const_reference testing::internal::StlContainerView< Element[N]>::ConstReference ( const Element(&)  array[N])
inlinestatic

Definition at line 433 of file gmock-internal-utils.h.

433  {
434  // Ensures that Element is not a const type.
435  testing::StaticAssertTypeEq<Element, RawElement>();
436 #if GTEST_OS_SYMBIAN
437  // The Nokia Symbian compiler confuses itself in template instantiation
438  // for this call without the cast to Element*:
439  // function call '[testing::internal::NativeArray<char *>].NativeArray(
440  // {lval} const char *[4], long, testing::internal::RelationToSource)'
441  // does not match
442  // 'testing::internal::NativeArray<char *>::NativeArray(
443  // char *const *, unsigned int, testing::internal::RelationToSource)'
444  // (instantiating: 'testing::internal::ContainsMatcherImpl
445  // <const char * (&)[4]>::Matches(const char * (&)[4]) const')
446  // (instantiating: 'testing::internal::StlContainerView<char *[4]>::
447  // ConstReference(const char * (&)[4])')
448  // (and though the N parameter type is mismatched in the above explicit
449  // conversion of it doesn't help - only the conversion of the array).
450  return type(const_cast<Element*>(&array[0]), N,
451  RelationToSourceReference());
452 #else
453  return type(array, N, RelationToSourceReference());
454 #endif // GTEST_OS_SYMBIAN
455  }
template<typename Element , size_t N>
static const_reference testing::internal::StlContainerView< Element[N]>::ConstReference ( const Element(&)  array[N])
inlinestatic

Definition at line 433 of file gmock-internal-utils.h.

433  {
434  // Ensures that Element is not a const type.
435  testing::StaticAssertTypeEq<Element, RawElement>();
436 #if GTEST_OS_SYMBIAN
437  // The Nokia Symbian compiler confuses itself in template instantiation
438  // for this call without the cast to Element*:
439  // function call '[testing::internal::NativeArray<char *>].NativeArray(
440  // {lval} const char *[4], long, testing::internal::RelationToSource)'
441  // does not match
442  // 'testing::internal::NativeArray<char *>::NativeArray(
443  // char *const *, unsigned int, testing::internal::RelationToSource)'
444  // (instantiating: 'testing::internal::ContainsMatcherImpl
445  // <const char * (&)[4]>::Matches(const char * (&)[4]) const')
446  // (instantiating: 'testing::internal::StlContainerView<char *[4]>::
447  // ConstReference(const char * (&)[4])')
448  // (and though the N parameter type is mismatched in the above explicit
449  // conversion of it doesn't help - only the conversion of the array).
450  return type(const_cast<Element*>(&array[0]), N,
451  RelationToSourceReference());
452 #else
453  return type(array, N, RelationToSourceReference());
454 #endif // GTEST_OS_SYMBIAN
455  }
template<typename Element , size_t N>
static const_reference testing::internal::StlContainerView< Element[N]>::ConstReference ( const Element(&)  array[N])
inlinestatic

Definition at line 433 of file gmock-internal-utils.h.

433  {
434  // Ensures that Element is not a const type.
435  testing::StaticAssertTypeEq<Element, RawElement>();
436 #if GTEST_OS_SYMBIAN
437  // The Nokia Symbian compiler confuses itself in template instantiation
438  // for this call without the cast to Element*:
439  // function call '[testing::internal::NativeArray<char *>].NativeArray(
440  // {lval} const char *[4], long, testing::internal::RelationToSource)'
441  // does not match
442  // 'testing::internal::NativeArray<char *>::NativeArray(
443  // char *const *, unsigned int, testing::internal::RelationToSource)'
444  // (instantiating: 'testing::internal::ContainsMatcherImpl
445  // <const char * (&)[4]>::Matches(const char * (&)[4]) const')
446  // (instantiating: 'testing::internal::StlContainerView<char *[4]>::
447  // ConstReference(const char * (&)[4])')
448  // (and though the N parameter type is mismatched in the above explicit
449  // conversion of it doesn't help - only the conversion of the array).
450  return type(const_cast<Element*>(&array[0]), N,
451  RelationToSourceReference());
452 #else
453  return type(array, N, RelationToSourceReference());
454 #endif // GTEST_OS_SYMBIAN
455  }
template<typename Element , size_t N>
static type testing::internal::StlContainerView< Element[N]>::Copy ( const Element(&)  array[N])
inlinestatic

Definition at line 456 of file gmock-internal-utils.h.

References GTEST_REMOVE_CONST_.

456  {
457 #if GTEST_OS_SYMBIAN
458  return type(const_cast<Element*>(&array[0]), N, RelationToSourceCopy());
459 #else
460  return type(array, N, RelationToSourceCopy());
461 #endif // GTEST_OS_SYMBIAN
462  }
template<typename Element , size_t N>
static type testing::internal::StlContainerView< Element[N]>::Copy ( const Element(&)  array[N])
inlinestatic

Definition at line 456 of file gmock-internal-utils.h.

References GTEST_REMOVE_CONST_.

456  {
457 #if GTEST_OS_SYMBIAN
458  return type(const_cast<Element*>(&array[0]), N, RelationToSourceCopy());
459 #else
460  return type(array, N, RelationToSourceCopy());
461 #endif // GTEST_OS_SYMBIAN
462  }
template<typename Element , size_t N>
static type testing::internal::StlContainerView< Element[N]>::Copy ( const Element(&)  array[N])
inlinestatic

Definition at line 456 of file gmock-internal-utils.h.

456  {
457 #if GTEST_OS_SYMBIAN
458  return type(const_cast<Element*>(&array[0]), N, RelationToSourceCopy());
459 #else
460  return type(array, N, RelationToSourceCopy());
461 #endif // GTEST_OS_SYMBIAN
462  }
template<typename Element , size_t N>
typedef testing::internal::StlContainerView< Element[N]>::GTEST_REMOVE_CONST_ ( Element  )
template<typename Element , size_t N>
typedef testing::internal::StlContainerView< Element[N]>::GTEST_REMOVE_CONST_ ( Element  )
template<typename Element , size_t N>
typedef testing::internal::StlContainerView< Element[N]>::GTEST_REMOVE_CONST_ ( Element  )

The documentation for this class was generated from the following file: